from rest_framework.pagination import PageNumberPagination
from rest_framework.response import Response


def jwt_response_payload_handler(token, user=None, request=None):
    '''
    ⾃定义jwt认证成功返回数据
    :param token:
    :param user:
    :param request:
    :return:
    '''

    return {
        'token': token,
        'id': user.id,
        'username': user.username
    }


# ⾃定义分⻚器
class PageNumPagination(PageNumberPagination):
     page_size_query_param = 'pagesize'
     max_page_size = 10
     # 指定分⻚返回结果的⽅法
     def get_paginated_response(self, data):
         return Response(
             {
             'count':self.page.paginator.count,
             'lists':data,
             'page':self.page.number,
             'pages':self.page.paginator.num_pages,
             'pagesize':self.max_page_size
             })